#include "../lvgl.h"
#include "../lv_conf.h" // 包含显示驱动配置
#include "../examples/lv_examples.h"
#include "../src/drivers/display/fb/lv_linux_fbdev.h" // 包含framebuffer驱动的头文件

// 显示驱动初始化
void lvgl_display_init(void) {
    // 创建LVGL显示驱动
    lv_display_t * disp = lv_linux_fbdev_create();
    if(disp == NULL) {
        // 处理错误
        return;
    }

    // 设置framebuffer设备文件路径，例如 "/dev/fb0"
    lv_linux_fbdev_set_file(disp, "/dev/graphics/fb0");

    // （可选）设置是否强制刷新显示内容
    lv_linux_fbdev_set_force_refresh(disp, true);
}

int main(void) {
    // 初始化LVGL
    lv_init();

    // 初始化显示驱动
    lvgl_display_init();

    // 创建一个屏幕对象
    // 注意：lv_screen_active()函数需要屏幕对象已经被创建
    // 这里假设lv_examples.h中有相关的屏幕创建代码
    lv_example_get_started_1();
    
    while(1) {
        lv_task_handler();
        // 你的其他代码可以放在这里
    }

    return 0;
}
